Unity 3d VR By C# and Google VR SDK

Click Here to View Step by Step

This Tutorial Unity 3d VR By C# Not used Gyroscope Sensor not all devices contain a gyroscope and Google VR SDK used Gyroscope Sensor

Virtual reality c# Code to Swipe (finger or mouse location ) :

* Video 360

* Panorama 360 Google VR SDK Virtual reality (Google VR SDK )

* Video 360

* Panorama 360

Code

https://shorturl.edafait.com/?XadhQtd

Insideout

 Shader "Insideout" {
Properties {
_MainTex ("Base (RGB)", 2D) = "white" {}
}


 SubShader {
Tags { "RenderType"="Opaque" }
Cull front    // ADDED BY BERNIE, TO FLIP THE SURFACES
LOD 100

Pass {  
	CGPROGRAM
		#pragma vertex vert
		#pragma fragment frag
		
		#include "UnityCG.cginc"

		struct appdata_t {
			float4 vertex : POSITION;
			float2 texcoord : TEXCOORD0;
		};

		struct v2f {
			float4 vertex : SV_POSITION;
			half2 texcoord : TEXCOORD0;
		};

		sampler2D _MainTex;
		float4 _MainTex_ST;
		
		v2f vert (appdata_t v)
		{
			v2f o;
			o.vertex = UnityObjectToClipPos(v.vertex);
			// ADDED BY BERNIE:
			v.texcoord.x = 1 - v.texcoord.x;				
			o.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex);
			return o;
		}
		
		fixed4 frag (v2f i) : SV_Target
		{
			fixed4 col = tex2D(_MainTex, i.texcoord);
			return col;
		}
	ENDCG
}
 }

}

Mouse Location to swipe

public enum RotationAxes { MouseXAndY = 0, MouseX = 1, MouseY = 2 }
public RotationAxes axes = RotationAxes.MouseXAndY;
public float sensitivityX = 15F;
public float sensitivityY = 15F;
public float minimumX = -360F;
public float maximumX = 360F;
public float minimumY = -60F;
public float maximumY = 60F;
float rotationY = 0F;
void Update()
{
    if (axes == RotationAxes.MouseXAndY)
    {
        float rotationX = transform.localEulerAngles.y + Input.GetAxis("Mouse X") * sensitivityX;

        rotationY += Input.GetAxis("Mouse Y") * sensitivityY;
        rotationY = Mathf.Clamp(rotationY, minimumY, maximumY);

        transform.localEulerAngles = new Vector3(-rotationY, rotationX, 0);
    }
    else if (axes == RotationAxes.MouseX)
    {
        transform.Rotate(0, Input.GetAxis("Mouse X") * sensitivityX, 0);
    }
    else
    {
        rotationY += Input.GetAxis("Mouse Y") * sensitivityY;
        rotationY = Mathf.Clamp(rotationY, minimumY, maximumY);

        transform.localEulerAngles = new Vector3(-rotationY, transform.localEulerAngles.y, 0);
    }
}

void Start()
{
    // Make the rigid body not change rotation
    if (GetComponent<Rigidbody>())
        GetComponent<Rigidbody>().freezeRotation = true;
}

Can be start web Augmented reality

Https://Webxr.edafait.com